﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

extern int add(int a, int b);
extern int sub(int a, int b);
extern int mult(int a, int b);
extern int dive(int a, int b);

//main62：案例：简单计算器
int main62()
{
	int a, b;
	char name[100];
	while (1)
	{
		printf("1.从键盘输入指令及操作数，按回车键结束：\n");//1.从键盘输入指令及操作数，按回车键结束：
		scanf("%s%d%d", name, &a, &b);//add 1 2 -->sub 3 4 -->mult 5 6 -->dive 7 0 -->dive 8 7 -->error 8 7 
		printf("2.接收到的指令及操作数为：%s %d %d\n", name, a, b);
		if (!strcmp("add", name))//2.接收到的指令及操作数为：add 1 2
		{
			printf("3.结果为：%d+%d=%d\n", a, b, add(a, b));//3.结果为：1+2=3
			continue;
		}
		else if (!strcmp("sub", name))//2.接收到的指令及操作数为：sub 3 4
		{
			printf("4.结果为：%d-%d=%d\n", a, b, sub(a, b));//4.结果为：3-4=-1
			continue;
		}
		else if (!strcmp("mult", name))//2.接收到的指令及操作数为：mult 5 6
		{
			printf("5.结果为：%d*%d=%d\n", a, b, mult(a, b));//5.结果为：5*6=30
			continue;
		}
		else if (!strcmp("dive", name))//2.接收到的指令及操作数为：dive 7 0 -->dive 8 7
		{
			if (!b)
			{
				printf("6.0不能作为除数！\n");//6.0不能作为除数！
				continue;
			}
			printf("7.结果为：%d/%d=%d\n", a, b, dive(a, b));//7.结果为：8/7=1
			continue;
		}
		else {//2.接收到的指令及操作数为：error 8 7
			printf("8.输入的指令有误，程序已退出！\n");//8.输入的指令有误，程序已退出！
			break;
		}
	}

	system("pause");
	return EXIT_SUCCESS;
}

int add(int a, int b)
{
	return a + b;
}
int sub(int a, int b)
{
	return a - b;
}
int mult(int a, int b)
{
	return a * b;
}
int dive(int a, int b)
{
	return a / b;
}